The present invention generally relates to clock adjustment for storage system and, more specifically, to a method and system for providing clock management and adjustment in connection with content retention in a storage system.
An important component of today's prudent business strategy is compliance with new and evolving regulations for retention of information, specifically, the processes by which records are created, stored, accessed, managed, and retained over periods of time. Whether it is emails, patient records, or financial transactions, businesses have to put in place policies, procedures, and systems to protect and prevent unauthorized access or destruction of these volumes of information. The need to archive critical business and operational content for prescribed retention periods that range from several years to forever is defined under a number of compliance regulations set forth by governments or industries. These regulations have forced companies to quickly re-evaluate and transform their methods for data retention and storage management. For example, United States government regulations on data protection now apply to health care (HIPAA), financial services (SEC 17a4), corporate accountability (Sarbanes-Oxley Act), life sciences (21 CFR Part 11), and government (DoD 5015.2-STD).
More specifically, a number of government or industry rules regulate companies as to the preservation of business activities records in a non-rewritable, non-erasable format. In one such instance, the U.S. Securities and Exchange Commission (SEC) requires all exchange members, brokers and dealers to preserve records of all their communications with their customers or clients in a non-rewritable, non-erasable format under the Securities Exchange Act of 1934 Rule 17a-4. In another instance, the NASD (National Association of Securities Dealers Inc.) has similar regulations under Rule 3010 and 3110. In many instances, the communications that are to be preserved include electronic communications, such as, emails, instant messages and voice mails.
Many existing storage systems manage preservation of their contents based on a time check. For example, a typical storage system assigns an expiration time to an associated file. The storage system, where appropriate, checks the expiration time against an internal clock to determine if the data can be overwritten. The foregoing approach has a number of shortcomings. For example, unauthorized and/or illegal tampering of the internal clock may render the time check useless, thereby allowing a file to be deleted earlier than originally authorized. Suppose a storage system is to keep certain data preserved for 3 years starting from now. Adjusting the internal clock to 3 years ahead would allow a user to delete such data before expiration of its intended retention period.
In another situation, even authorized adjustment of the internal clock may inadvertently render the time check meaningless. The internal clock may be prone to accidental error including, for example, inaccuracy resulting from clock failure or natural variance occurring out of routine operations or circumstances not related to the internal mechanics of the clock. As a result, the storage system needs to allow at least an authorized user to adjust the internal clock to the correct time. However, an authorized user may enter the incorrect time thereby affecting the retention periods for the corresponding files.
A number of methods currently exist which allow an internal clock to be adjusted. In one method, the network time protocol (NTP) is used. NTP specifies formal structure and summarizes information that is useful for its implementation. NTP provides the mechanisms to synchronize time and coordinate time distribution in a large, diverse internet operating at various rates and media ranging from ordinary coaxial cable to optical fiber. NTP uses a returnable-time design in which a distributed subnet of time servers operating in a self-organizing, hierarchical-master-salve configuration synchronizes local clocks within the subnet to national time standards via wire or radio. The time servers can also redistribute reference time via local routing algorithms and time daemons. Further information can be found at RFC 1305.
In another method, automatic adjustment of self-contained radio-clock is provided by means of a time mark. More specifically, a time measuring method is combined with an automatic rate correction process in a digital or quasi-analog clock. The clock rate deviation data is repeatedly measured, in a predetermined lock-in-range, and derived from the clock oscillator frequency, by means of a time mark received from a transmitter. The deviation data is then stored and used for correcting the clock rate and the oscillator frequency whereby the stored data is maintained until the arrival of the next time mark.
These methods merely focus on how to adjust an internal clock based on a reference time. They do not, however, check the reasonableness of the reference time. As a result, if the reference time is incorrect, the internal clock will be adjusted incorrectly as well.
Hence, it would be desirable to provide a method and system that is capable of solving the foregoing problems, as well as others, with respect to proper clock adjustment in connection with data retention in storage systems.